package com.system.manager.common.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;



/**
 * @Classname ExclTemplate
 * @Description TODO excl模板类型
 * @Date 2021/11/13 10:02
 * @Created by 杨小鹏：【241960695@qq.com】
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public abstract class ExclTemplate {

    // 模板名字
    public String templateName;

    // 设置添入的内容
    public String[] templateContent;


    // 判断自定义模板内容是否合法
    public abstract boolean isValid(Sheet sheet);

    // 设置自己的模板名字
    public abstract void setTemplateName(String templateName);

    // 设置自己的模板内容
    public abstract void setTemplateContent(Object templateObject) throws IllegalAccessException;

    // 根据自己的模板内容生成模板对象
    public abstract Object createTemplateObject(Row row);
}
